Program algebra for sequential code

نویسندگان

  • Jan A. Bergstra
  • M. E. Loots
چکیده

The jump instruction is considered essential for an adequate theoretical understanding of imperative sequential programming. Using basic instructions and tests as a basis we outline an algebra of programs, denoted PGA, which captures the crux of sequential programming. We single out a behavior extraction operator which assigns to each program a behavior. The meaning of the expressions of PGA is explained in terms of the extracted behavior. Using PGA a small hierarchy of program notations is developed. Projection semantics is proposed as a tool for the description of program semantics. © 2002 Elsevier Science Inc. All rights reserved.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Reusability for Parallel Hybrid Numerical Methods

LAKe (Linear Algebra Kernel) is a linear algebra class library developed using an object oriented approach, in order to enable very good code reuse for sequential and parallel linear algebra applications. An application implemented using LAKe can be run either in sequential or parallel mode using the same code. In this paper we propose an extension to the LAKe library, which allows making use o...

متن کامل

Toward the reusability for iterative linear algebra software in distributed environment

LAKe (Linear Algebra Kernel) is a linear algebra class library developed using an object oriented approach in order to enable a good reuse code for sequential or parallel linear algebra applications. An application implemented using LAKe can be run either in sequential or in parallel mode using the same code. This paper proposes an extension to the LAKe library, which enables an implemented met...

متن کامل

Parallelizing Algorithms for Symbolic Computation using kMAPLEk

kMAPLEk (speak: parallel Maple) is a portable system for parallel symbolic computation. The system is built as an interface between the parallel declarative programming language Strand and the sequential computer algebra system Maple, thus providing the elegance of Strand and the power of the existing sequential algorithms in Maple. The implementation of diierent parallel programming paradigms ...

متن کامل

Formalizing Static Analysis Techniques with Kleene Algebra

Static program analysis consists of compile-time techniques for determining properties of programs without actually running them [1–3]. Among the applications of static program analysis are the optimization by compilers of object code [4] and the detection of malicious code or code that might be maliciously exploited [5, 6]. The obvious relevance and (sometimes critical) importance of such appl...

متن کامل

A novel compiler support for automatic parallelization on multicore systems

The widespread use of multicore processors is not a consequence of significant advances in parallel programming. In contrast, multicore processors arise due to the complexity of building power-efficient, high-clock-rate, single-core chips. Automatic parallelization of sequential applications is the ideal solution for making parallel programming as easy as writing programs for sequential compute...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • J. Log. Algebr. Program.

دوره 51  شماره 

صفحات  -

تاریخ انتشار 2002